package com.flower8.dao;

import com.flower8.model.SysMenu;

import java.util.List;
import java.util.Map;

/**
 * @Description: 菜单Dao层
 * @Author: tanglin
 * @Date: 2019/09/04 15:38
 * @Version: 1.0
 */
public interface SysMenuDao {
    /**
     * 根据主键查询菜单
     * @param id 菜单主键id
     * @return
     */
    SysMenu getById(Long id);
    /**
     * 查询所有菜单
     * @return
     */
    List<SysMenu> getMenuAll();
    /**
     * 查看用户权限内的菜单
     * @param permiArray  权限内的菜单数组
     * @return
     */
    List<SysMenu> getListByUser(Map permiArray);

    /**
     * 更新菜单
     * @param sysMenu
     */
    void updateMenu(SysMenu sysMenu);

    /**
     * 新增菜单
     * @param sysMenu
     */
    void saveMenu(SysMenu sysMenu);

    /**
     * 删除菜单
     * @param id
     */
    void deleteMenu(Long id)throws Exception;

    /**
     * 查询一级菜单
     * @return
     */
    List<SysMenu> listParents();

}
